package com.ruoyi.pay.service;

import java.util.List;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.pay.domain.PayOrder;
import com.ruoyi.pay.domain.vo.PayOrderVO;
import com.ruoyi.wx.domain.WxPayReturnInfo;

/**
 * 支付订单Service接口
 * 
 * @author ruoyi
 * @date 2022-08-04
 */
public interface IPayOrderService extends IService<PayOrder>
{
    /**
     * 查询支付订单
     * 
     * @param id 支付订单主键
     * @return 支付订单
     */
    public PayOrder selectPayOrderById(String id);

    /**
     * 查询支付订单列表
     * 
     * @param payOrder 支付订单
     * @return 支付订单集合
     */
    public List<PayOrder> selectPayOrderList(PayOrder payOrder);

    /**
     * 修改支付订单
     * 
     * @param payOrder 支付订单
     * @return 结果
     */
    public int updatePayOrder(PayOrder payOrder);

    /**
     * 批量删除支付订单
     * 
     * @param ids 需要删除的支付订单主键集合
     * @return 结果
     */
    public int deletePayOrderByIds(String[] ids);

    /**
     * 删除支付订单信息
     * 
     * @param id 支付订单主键
     * @return 结果
     */
    public int deletePayOrderById(String id);

	public WxPayReturnInfo createPayOrder(PayOrderVO payOrder);

	public String updatePayOrder(String xmlData);

	public WxPayReturnInfo createVipPayOrder(PayOrderVO payOrder);

	public String updatePayVipOrder(String xmlData);

	public String updatePayStoreOrder(String xmlData);

	public WxPayReturnInfo createStorePayOrder(PayOrderVO payOrder);

	public WxPayReturnInfo createPayCardOrder(PayOrderVO payOrder);

	public WxPayReturnInfo createActivityPayOrder(PayOrderVO payOrder);

	public WxPayReturnInfo createTuanPayOrder(PayOrderVO payOrder);

}
